Geophysicists commonly obtain various types of data from which they infer the presence or absence of hydrocarbons in the subsurface. These data are often separately imaged using techniques, such as migration or inversion, and then jointly interpreted with the aid of a priori information, such as rock physics models.
Various references describe processing approaches to the measured data in the context of a single data type. As an first example, Commer and Newman (“New advances in three-dimensional controlled-source electromagnetic inversion,” Geophys, J. Int, 172, 513-535 (2008)) and U.S. Pat. No. 7,808,420 to Carazzone describe solving the problem of inverting controlled-source electromagnetic data for a resistivity model of the subsurface. These references divide a massively-parallel computer into groups of N processors each and decompose the resistivity model by volume among the N processors, the same volume decomposition being replicated on each group. The reference describes further dividing the measured data among the different processor groups so that, using the principle of reciprocity, each group may perform its forward simulation operations (F) independently of the other groups. The processor groups collaborate in updating the resistivity model so that, at the end of an inversion iteration, each group contains the same volume decomposition of the new resistivity model. Commer and Newman further describe the possibility of a load imbalance, where some groups may complete F in advance of other groups and that the load imbalance may change as the iteration progresses. The reference mentions that the solution times for F may be estimated prior to any inversion iterations, but apparently chooses to remedy the load imbalance by ensuring that each group has a similar set of frequencies to simulate, frequency being correlated to the size of the finite difference grid and the grid size being further correlated to the simulation time. In particular, Commer and Newman and Carazzone describe selecting a static, unchanging decomposition of the data among the processor groups and are not concerned by the fact that frequency is an imperfect stand-in for simulation time.
The performance of these methods have certain limitations. For example, numerical experiments with this method have shown significant variations in simulation time between the slowest and fastest processor groups. As an example, with 16 to 24 modern processors assigned to each group and for frequencies in the range of 0.1 to 5 Hz, the performance time periods for F range might range from about 50 seconds to about 2500 seconds. These times range over a factor of 50, with a significant number of times in the range of 1850 seconds. Furthermore, the redundant copying of the resistivity model to all processor groups, as described in these references, decrease the amount of memory available for simulation, which increases N, and thereby decreases the number of simulations that may be carried out concurrently. This problem is even more severe in joint inversions in which more memory is needed to store different types of model parameters. Also, the performance of most pre-conditioning methods used in the forward simulations degrades with increasing N.
As another processing approach involves dynamic load balancing, which involves tasks that are assigned to processor groups based on their availability. This approach has been applied to seismic processing problems, such as 3-D traveltime computation. As noted in U.S. Pat. No. 5,991,695 to Wang and Willen, a massively parallel computer system is divided into groups of processors, each group being used to compute seismic traveltimes in a region of the earth. As each group completes its assigned traveltime computation, it is assigned a new computation task by a control processor, thereby ensuring load balance across all groups and maximizing throughput of the massively parallel computer system. This method of dynamic load balancing may be thought of as a “master-slave” or “leader-worker” model. Also, heterogeneous parallelism, in which different processor groups take on very different tasks, is exemplified, for example, in U.S. Pat. No. 5,657,223. In this reference, processor groups are assigned one of control tasks, input/output tasks, or analysis tasks. This method permits processors to be assigned to tasks in proportion to the amount of computational work and memory requirements associated with each task and permits the computer code associated with each task to be simplified and optimized. In this reference, the input/output and analysis tasks are concerned only with the migration of seismic data and do not address the varying memory and computational requirements associated with jointly inverting multiple types of geophysical data.
In addition to the references that focus on a single data type, other joint inversion references do not appear to address the problems with the larger data sets and resulting processing complexity. As example, Hou et al. (“Reservoir-parameter identification using minimum relative entropy-based Bayesian inversion of seismic AVA and marine CSEM data,” Geophysics 71, pp. O77-O88 (2006)) describes a method that specializes to very simple, one-dimensional resistivity and seismic wave velocity models and restricts the use to the simplified seismic problem of Amplitude Variation with Angle or reflectivity inversion. The reference primarily describes the application of the method to the uncertainties in their rock physics model and is not focused on application to large amount of data of inversions in three-dimensional space. Thus, large parallel computers are not needed and the reference is not concerned with the efficient use of such an expensive resource or with the parallelization of three-dimensional problems.
Another example is Gallardo and Meju (“Joint two-dimensional DC resistivity and seismic travel time inversion with cross-gradients constraints,” Journ. Geophysical Res. 109, B03311-03321 (2004)), which describes more complicated, two-dimensional earth models for resistivity from DC resistivity data component and seismic velocity from traveltime information in the seismic data component. The reference does not appear to address the underlying rock physics model or problems large enough to involve a massively parallel computer system.
Further, yet another example is described in Jorgensen and Kisabeth (“Joint 3-D inversion of gravity, magnetic, and tensor gravity fields for imaging salt formations in the deepwater Gulf of Mexico,” Expanded abstracts, 79th Annual International Meeting, Society of Exploration Geophysicists, 424-426 (2000)). This reference describes three-dimensional earth models of key horizons derived from seismic images using gravity and magnetic data. The reference does not appear to address the underlying rock physics model. The reference appears to restrict the discussion to very simple data types, which require very low level of computational demand in forward simulation, so that they do not require a massively parallel computer system.
Despite the teaching in these references, an efficient implementation of large-scale, joint geophysical inversion on a computer system having parallel processors, such as a massively parallel computer system, is not provided. In particular, is a method of jointly inverting large-scale field data sets on such computer systems in an enhanced manner.